Steerable array RF antennas are now commonly used in aircraft radar systems (and in other applications as well) because they are rugged, compact, can be conformal if necessary, have low profiles, and exhibit electronically "steerable" directional radiation characteristics. Generally such antennas include many hundreds (or even thousands) of discrete miniature RF antenna elements and an electrically controllable phase shifter circuit (e.g., a ferrite phase shifter) associated with each RF element. It is possible to control the RF radiation characteristics (including directivity) of the array by properly controlling the amount of phase shift provided by the phase shifter circuits. See, for example, commonly assigned U.S. Pat. No. 4,445,098 to Sharon (1984).
Of course, for most or all desired radiation patterns it is not possible to use the same amount of phase shift for each element in the array. Rather, it is necessary to calculate (using for example multiple term trigonometric expressions) the phase shift for each individual array element and to then use the result of the calculation to control the phase shifts associated with the array elements (i.e., to provide a two-dimensional phase shift contour appropriate for the desired radiation characteristic).
Many factors go into the calculation of the new phase shift commands required to move the beam position in a steerable phased array (e.g., for example, planar types). Some of these factors include the azimuth and elevation (i.e. "beam pointing") angle, antenna feed compensation values, and linearization parameters (linearization is necessary because ferrite phase shift circuits are non-linear devices). Phase shift commands typically must also be varied with RF operating frequency and array temperature--adding further levels of computation. Moreover, reciprocal antennas (used for both transmit and receive) may require two phase shift calculations for each element: one for transmit and a different one for receive (since ferrite the phase shift circuits are generally not reciprocal).
Additional phase shift calculations are required if it is necessary to "spoil" the array during times of inactivity (e.g., to prevent the array antenna from being detected by enemy radar) or when a different antenna gain pattern is required. A beam spoiling function typically involves computing an additional phase offset (typically as a function of element position) for each element and applying the additional phase offset across the array. Beam spoiling may be symmetrical (where the same spoiling function is applied in the azimuth and elevation planes) or asymmetrical (where different spoiling functions are used in different planes). Difficult computational problems arise if an asymmetrical spoiling function is used with a non-stationary array (e.g., an airborne array subject to rotation during aircraft roll maneuvers), since the phase shift of each array element must be recalculated in real time in response to changes in array orientation.
Since phase shift calculations must typically be performed on an element-by-element basis, the number of required phase shift calculations is directly proportional to the number of elements in the array. Significant advantages are often obtained by using a relatively large array (e.g., a 64 element by 64 element rectangular array having 4096 discrete array elements). Unfortunately, even the fastest beam steering computers available under current technology are simply not fast enough to calculate on the order of 4096 different phase shifts and communicate the results of the calculations to control the 4096 individual phase shifters for a desired beam update rate of on the order of 10 kHz or higher.
Beam update rate is a particularly critical performance criterion. In a radar system, for example, it is typically necessary to perform a beam update within the two-way travel time to the minimum surveillance target distance (e.g., this two-way travel time is on the order of 100 microseconds for short to medium range airborne radar systems). That is, it is desirable for many reasons to be able to update beam parameters between the time an RF radar burst is transmitted and the time the burst returns to the array after being reflected by an object. It is also typically necessary to adjust the beam radiation characteristics in response to rapidly changing parameters (e.g., changes in desired beam directionality, array orientation due to aircraft roll, RF operating frequency, etc.) Unfortunately, even if the beam steering computer were capable of performing the necessary calculations at a sufficiently high rate, it would be difficult or impossible to reliably transfer the calculation results to the individual phase shifters in time to update the entire array.
Centralizing beam steering calculations in the beam steering computer makes very efficient use of the beam steering computer hardware (and also in the past has provided very rapid calculation speed because of the efficiencies resulting from performing all required calculations together). Unfortunately, this approach requires all data to be transmitted from the centralized computer to the individual phase shifter circuits (these circuits are typically located at or near their associated array RF element). While various techniques (e.g., multiplexing, direct memory access techniques, multiple port arrangements, outboard "smart" parallel communications coprocessors, and the like) are known for rapidly transferring data from a central computer to hundreds or thousands of receiving nodes, the wiring required to accomplish such high rate data transfer for large RF arrays would be extremely complex (increasing the cost and reducing the reliability of the entire system) and might not work very well (or at all) in the hostile, noisy environment created by the RF radiating from the array.
One possible solution to the problem of slow beam steering computer interfacing (i.e., communications to phase shifter circuits) is to perform various required calculations beforehand and load the resulting phase shift commands into memories associated with individual or groups of phase shifter circuits. The beam steering computer may then simply control selection of the appropriate data in the memory in real time in response to changing operating conditions instead of actually recalculating and retransmitting the commands for all phase shifts each time the beam is updated. One problem with this approach is that it is somewhat inflexible (since most or all required phase shifts must be calculated beforehand rather than "on the fly" in response to actual changing conditions). Another related problem with this approach is that it is extremely memory intensive to provide a sufficient number of precalculated phase shift commands to control a large array to the precision typically required. This problem is exacerbated in systems requiring that the array spoiling function be compensated for array rotation.
Suppose, for example, that array spoiling function compensation for on the order of one or two degrees of rotation is necessary. It may be acceptable to provide, for example, a different spoiling function phase offset for each of 256 different rotational positions (i.e., a different offset for each 1.4 degrees or so of rotation). If 64 stationary array elements require 8K of memory for storing a set of non-spoiled phase shift commands that are compensated for array rotation, for example, then on the order of 1.28 MBytes of memory may be required to store the phase shift commands for the same 64 elements when spoiling is compensated for array rotation. Such large amounts of high speed memory are simply not feasible within the size and cost constraints of a practical system.
It is generally known how to distribute the processing of phase shift calculations to overcome some of the problems discussed above. See, for example, the following references disclosing the use of distributed processing in an array antenna beam steering processor:
Waldron et al, "Distributed Beamsteering Control of Distributed Phased Array Radars", 29 Microwave Journal no. 9, pages 133-146 (September 1986); and PA1 U.S. Pat. No. 4,445,119 to Works (1984).
The Works patent describes a distributed beam steering computer including a microcomputer circuit at each array element. Each microcomputer circuit stores data constants relating to the position of its associated element in the array. The common elevation angle, azimuth angle and frequency parameters (which are required for the phase shift calculations of all array elements) are broadcasted to all microcomputer circuits over a serial data line. Each microcomputer circuit performs a shift-and-add type algorithm to calculate a phase shift command in response to the broadcasted information and the locally stored information particular to its associated array element, and generates a resulting phase shift command word used to directly control the array element phase shifter circuit.
The Waldron et al article discusses that distributed array control may help to overcome some of the problems caused by increased complexity of beam forming and steering (e.g., for very large arrays, non-planar or conformal arrays, and for active aperture arrays requiring gain as well as phase control). The article surveys various possible distributed control architecture alternatives, including element level distributed processing (such as is disclosed in the Works patent) and partially distributed beamsteering computation (in which phase shift adder/controllers at each array element merely add partially computed results provided by the beam steering computer and therefore do not perform the entire computation). The article states that the partially distributed array control approach has severe limitations of not allowing element level corrections without providing additional element level hardware and much additional complexity in control node and interconnect architecture. The article concludes that element level distributed control (in which each element has an associated controller performing the entire phase shift computation at the element level) is the best choice for arbitrary array geometries and/or for those applications involving significant calculation complexity.
Although others in the past have used distributed parallel beam steering control parallel processing, significant improvements are possible.
The present invention provides a method and apparatus for updating the phase commands of a large planar array in real time at rates greater than 10 kHz using a unique distributed control architecture. State of the art advancements in integrated circuits and gate arrays and a new algorithm and architecture provided by the present invention make it possible to command smaller groups of ferrite phase shifters--circumventing the data transfer "bottleneck" and complex wiring of central computing systems. A high degree of integration makes this new approach feasible in cost, size and weight.
In accordance with one aspect of the present invention, an antenna array is subdivided into plural sub-arrays and a phase shift command calculation device ("phase shift interface electronics"--PIE) is provided for each of the sub-arrays. In accordance with this aspect of the invention, each sub-array comprises more than one array element (and preferably comprises a relatively large number of elements such as 64)--with associated phase shifter circuits. Each PIE is loaded beforehand with values specific to the sub-array it is associated with (e.g., position of the sub-array within the array, linearization and phase compensation parameters due to feed line delay, etc.). A beam steering computer broadcasts common (i.e., array element position independent) information (e.g., delta azimuth angle, delta elevation angle and rotational parameters) to all PIEs. Each PIE receives the broadcasted data and performs various phase shift angle calculations required to compute a phase shift command for each of the elements it is associated with.
Some of the calculations performed by the PIEs are intermediate calculations valid for several elements in the associated sub-array (e.g., due to the close positional relationship of all elements in the sub-array). In addition, the same hardware can be used in an iterative manner to calculate, in sequence, the phase shift parameters for all elements in the sub-array (the hardware is fast enough and the number of elements in each sub-array is small enough to provide a desired beam update rate on the order of 10 kHz or higher). Great savings in hardware (compared with providing an individual microcomputer calculation device for each array element) are provided.
As each PIE calculates final phase shift values, it stores the values in a bank of counter/registers (e.g., after the values are linearized using PROM mapping techniques). All counter/registers of all PIEs may produce timing pulse type phase shift commands essentially simultaneously as soon as all of the sequential calculations are performed.
The present invention thus provides a significant degree of parallel, distributed processing while avoiding the disadvantages (e.g., in terms of complexity, degraded reliability, increased weight and additional costs) of providing an individual microcomputer for each array element. Moreover, the present invention advantageously uses the simplified phase shifter driver described in copending Patent Application Serial No. 07/333,961 of Wallis et al cited above since only a single command line needs to be connected between the sub-array PIE and an associated phase shifter (thus simplifying the interconnection between sub-array element phase shifters and the sub-array PIE).
The present invention provides many advantages including the following:
Memory savings; PA0 Significant decrease in the time added to update the entire array due to the reduction in the amount of data that needs to be transferred; PA0 System beam update rate in excess of 10 kHz; PA0 Lower hardware costs and complexity and increased reliability; PA0 Phase compensation for arbitrary array and sub-array configurations; PA0 Compensation for behavior parameters of individual array elements (e.g., feed delay compensation, and measured element radiating characteristics); PA0 Compensation for rapidly changing parameters such as frequency and array temperature on the sub-array level; and PA0 Capable of spoiling the array asymmetrically and compensating the spoiling function for change in array orientation (i.e., rotation) without degrading beam update rate.